#ifndef SEEMENUS_H_
#define SEEMENUS_H_

#include <iostream>

using namespace std;

/* ======================================================
MENUS DISPLAY FOR CLIENT AND ADMINISTRATOR
======================================================== */

/** Visualizes the menu options of main menu */
void seeMainMenu();

/** Visualizes the menu options of login menu */
void seeMenuLogin();

/** Visualizes the menu options of Edit Client menu */
void seeMenuEditClient();

/** Visualizes the menu options of Edit Clients menu */
void seeMenu_EditClients();

/** Visualizes the menu options of Search Items menu for client */
void seeMenuSearchItems();

/** Visualizes the menu options of Edit Items menu for client */
void seeMenu_EditItems();

/** Visualizes the menu options of Edit Items Options menu for client */
void seeMenuEditItem_Options();

/** Visualizes the menu options of Edit Transactions Options menu for client */
void seeMenuEditTrans_Options();

/** Visualizes the menu options of Buying Trade Items Options menu for client */
void seeMenu_Buy_Trade_Items();

/** Visualizes the menu options of the menu Historic for client */
void seeMenu_Historic();

/** Visualizes the menu options of the menu Historic for admin */
void seeMenuAdmin_Historic();

/* ======================================================
MENUS DISPLAY FOR CLIENT ONLY
========================================================= */

/** Visualizes the menu options of initial menu for client */
void seeMenuClient();

/** Visualizes the menu options of preferences menu for client */
void seeMenuPreferences();

/** Visualizes the menu options of Rare Items menu */
void seeMenu_RareItems();

/** Visualizes the menu options of Manage Items menu for client */
void seeMenuClient_ManageItems();

/** Visualizes the menu options of Manage Types menu for client */
void seeMenuAdmin_ManageTypes();

/** Visualizes the menu options of Manage Transactions menu for client */
void seeMenuClient_ManageTransactions();

/** Visualizes the menu options of Search Transactions menu for client */
void seeMenuClient_SearchTransactions();

/** Visualizes the menu options of Manage Auctions menu for client */
void seeMenuClient_ManageAuctions();

/** Visualizes the menu options of Search Auctions menu for client */
void seeMenuClient_SearchAuctions();

/** Visualizes the menu options of initial bids menu for client */
void seeMenuClient_ManageAuctionBids();

/** Visualizes the menu options of placing auction bids for client
 * Appears afer choosing an auction */
void seeMenuClient_PlaceAuctionBids();

/** Visualizes the menu options for Manage itemsCatalogue for client */
void seeMenuManageBST_Client();

/* ======================================================
MENUS DISPLAY FOR ADMINISTRATOR ONLY
========================================================= */

/** Visualizes the menu options of initial menu for admin */
void seeMenuAdmin();

/** Visualizes the menu options of Manage Items for admin */
void seeMenuAdmin_ManageItems();

/** Visualizes the menu options of Manage Clients for admin */
void seeMenuAdmin_ManageClients();

/** Visualizes the menu options of Manage Clients Search for admin */
void seeMenuAdmin_ManageClients_Search();

/** Visualizes the menu options of Manage Auctions for admin */
void seeMenuAdmin_ManageAuctions();

/** Visualizes the menu options of Search Auctions for admin */
void seeMenuAdmin_SearchAuctions();

/** Visualizes the menu options of Manage Transactions for admin */
void seeMenuAdmin_ManageTransactions();

/** Visualizes the menu options of Search Transactions for admin */
void seeMenuSearchTrans();

/** Visualizes the menu options of Current Records for admin */
void seeMenuAdmin_CurrentRecords();

/** Visualizes the menu options of Manage itemsCatalogue for admin */
void seeMenuManageBST_Admin();

//******************************************************************//
/** General menu for admin for the historic of items*/
void seeMenuAdmin_HistoricItems();
/** Options for admin: view/edit/remove item from hash*/
void seeMenuAdmin_HistoricItems_Options();

#endif /* SEEMENUS_H_ */
